EC2の新インスタンスタイプ”C4″をベンチマークしてみた
ウィスキー、シガー、パイプをこよなく愛する大栗です。 re:Invent 2014でアナウンスされていた新しいEC2のインスタンスタイプ"C4"を使用できるようになりました。C3に比べて、どの程度早くなったのか計測してみました。
C4自体の説明はせーのがAmazon EC2の新インスタンス「C4ファミリー」を触ってみたという記事を書いておりますので、こちらを参照下さい。
2015/01/14 15:20 ディスクアクセスのパフォーマンスに関する箇所は、内容を取り下げます。
ベンチマーク
インスタンス全体のパフォーマンスを計速します。
計測環境
計測ツールはいつも通りにUnixBenchを使用します。 計測内容は以下の通りです。
- UnixBench 5.1.3
- EC2インスタンス:c3.large(2並列)、c4.large(2並列)、c3.xlarge(4並列)、c4.xlarge(4並列)
- EBS:gp2 1000GB
- 使用リージョン:東京(ap-northeast-1)
- 使用AMI:Amazon Linux AMI 2014.09.1 (HVM) - ami-4985b048
計測結果
以下が計測結果になります。なお、UnixBenchは複数回計測した結果の平均を出力するため、UnixBench自体の計測回数は1回です。
vCPUs:2 (2並列) | vCPUs: 4 (4並列) | |||||
---|---|---|---|---|---|---|
c3.large | c4.large | c4/c3 | c3.xlarge | c4.xlarge | c4/c3 | |
Dhrystone 2 using register variables (整数演算) | 3443.1 | 3789.8 | 110.1% | 6869.1 | 7591.0 | 110.5% |
Double-Precision Whetstone (浮動小数点) | 1332.0 | 1458.3 | 109.5% | 2663.7 | 2923.9 | 109.8% |
Execl Throughput (システムコール) | 1392.0 | 1664.7 | 146.6% | 2849.9 | 3267.4 | 114.6% |
File Copy 1024 bufsize 2000 maxblocks (ディスクI/O) | 2417.3 | 3544.7 | 146.6% | 2275.4 | 2623.1 | 115.3% |
File Copy 256 bufsize 500 maxblocks (ディスクI/O) | 1618.3 | 2251.9 | 139.2% | 1425.0 | 1691.9 | 118.7% |
File Copy 4096 bufsize 8000 maxblocks (ディスクI/O) | 5561.5 | 7237.6 | 130.1% | 4833.9 | 3829.0 | 79.2% |
Pipe Throughput (パイプ) | 1605.6 | 1896.8 | 118.1% | 3323.2 | 3829.0 | 115.2% |
Pipe-based Context Switching (パイプ) | 971.4 | 1168.8 | 120.3% | 1910.3 | 2124.8 | 111.2% |
Process Creation (プロセスフォーク) | 1616.2 | 1912.4 | 118.3% | 2970.1 | 3490.0 | 117.5% |
Shell Scripts (1 concurrent) (シェルのテキスト処理:1並列) | 2021.5 | 2339.8 | 115.7% | 3944.7 | 4471.4 | 113.4% |
Shell Scripts (8 concurrent) (シェルのテキスト処理:8並列) | 1950.1 | 2271.2 | 116.5% | 3897.8 | 4445.5 | 114.1% |
System Call Overhead (システムコール) | 1939.7 | 2415.6 | 124.5% | 3645.6 | 4000.4 | 109.7% |
System Benchmarks Index Score (総合スコア) | 1930.4 | 2353.9 | 121.9% | 3123.9 | 3569.8 | 114.3% |
まとめ
C4はC3と比較するとカタログ上はECU比が8:7で価格比もほぼ同じ(c4.8xlargeを除く)です。CPUのみの価格性能比はC3とC4で変わらないようです。そのため、ディスクの使い方と「AVX2」命令の有無で使い分けをした方が良いと思われます。 ディスクは、C3にInstance Storeが有りC4にはありません。また、C4の場合はEBS最適化が標準で有効になっているためEBSへのアクセス速度が速くなっています。swapへのアクセスが多い場合にはC3、通常のディスクI/Oが多い場合はC4の方が良いと思われます。 また、「AVX2」命令に最適化できるアプリケーションである場合はC4を使用するべきでしょう。
さいごに
C3とC4を比較してみましたが、双方とも現行世代のため極端な差になりませんでした。ディスクの用途で使い分けをした方が良いと思われるので、動かすアプリケーションのワークロードに合うか確認しましょう。 なお、C4は仮想化タイプがHVMのみ対応しています。Paravirtualで作成したAMIを使用できないのでご注意下さい。